package com.yvon.maple.service.msg.sub.model.dto;

import com.alibaba.fastjson.JSONObject;
import com.yvon.maple.pojo.BaseDTO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

import java.io.Serializable;

/**
 * 订阅模板响应参数
 *
 * @author : Yvon
 * @since : 2022-05-19
 */
@EqualsAndHashCode(callSuper = true)
@Data
@AllArgsConstructor
@NoArgsConstructor
@ApiModel("订阅模板响应参数")
public class SubscribeTemplateDto extends BaseDTO implements Serializable {
    /**
     * 标识
     */
    @ApiModelProperty(value = "标识")
    private String code;

    /**
     * 名称
     */
    @ApiModelProperty(value = "名称")
    private String name;

    /**
     * 订阅类型
     * 0 - 主动订阅
     * 1 - 被动订阅
     */
    @ApiModelProperty(value = "订阅类型 0 - 主动订阅 1 - 被动订阅")
    private Integer type;

    /**
     * 默认的发送渠道及模板
     * 示例：{"im": 2, "sms": 3}
     * key:渠道类型,value:模板ID
     */
    @ApiModelProperty(value = "默认的发送渠道及模板 示例：{\"im\": 2, \"sms\": 3} key:渠道类型,value:模板ID")
    private JSONObject defaultChannelTemplate;

    /**
     * 状态
     * 0 - 未启用
     * 1 - 已启用
     */
    @ApiModelProperty(value = "状态 0 - 未启用 1 - 已启用")
    private Integer status;

    /**
     * 备注
     */
    @ApiModelProperty(value = "备注")
    private String remark;
}
